package com.shux.kafka.consumer;
/**
 * 描述：
 * 
 * <pre>HISTORY
 * ****************************************************************************
 *  ID   DATE           PERSON          REASON
 *  1    2017年9月19日      Simba.Hua         Create
 * ****************************************************************************
 * <entry key="enable.auto.commit" value="false"/>
                 <entry key="auto.commit.interval.ms" value="1000"/>
                 <entry key="session.timeout.ms" value="15000"/>
                 <entry key="zookeeper.session.timeout.ms" value="60000"/>
                 <entry key="zookeeper.connection.timeout.ms" value="20000"/>
                 <entry key="fetch.message.max.bytes" value="10485760"/>
                 <entry key="auto.offset.reset" value="smallest"/>
                 <entry key="auto.offset.reset.ms" value="3600000"/>
                 <entry key="rebalance.max.retries" value="10000"/>
 * </pre>
 * @author Simba.Hua
 */

public class ConsumerOptionConfig {
	/**
	 * 从生产者获取到消息装入队列的大小
	 */
	private Integer fatchQueueSize = 1000;
	/**
	 * 一次性发送给客户端的数据量
	 */
	private Integer messageGroupSize = 200;
	/**
	 * 最多等待多少秒可以将消息发送给客户端
	 */
	private Integer waitGroupSizeMillis = 5000;
	/**
	 * 推送数据队列的大小
	 */
	private Integer packDataQueueSize = 100;
	/**
	 * 推送数据队列中没有数据时睡眠的毫秒数
	 */
	private Integer packNoDataSleepMillis = 200;
	/**
	 * 消费线程数
	 */
	private Integer consumerThreadCount = 5;
	private Integer autoCommitIntervalMs = 1000;
	private Integer sessionTimeout = 15000;
	private Integer zookeeperSessionTimout = 60000;
	private Integer zookeeperConnectionTimeout = 20000;
	private Integer fetchMessageMaxBytes = 10485760;
	private String autoOffsetReset = "latest";
	private Integer autoOffetResetMs = 3600000;
	private Integer rebalanceMaxRetries = 10000;
	private Boolean transation = Boolean.TRUE;//是否支持事务
	private IConsumerExceptionHandler exceptionHandler;
	public Integer getFatchQueueSize() {
		return fatchQueueSize;
	}
	public void setFatchQueueSize(Integer fatchQueueSize) {
		this.fatchQueueSize = fatchQueueSize;
	}
	public Integer getMessageGroupSize() {
		return messageGroupSize;
	}
	public void setMessageGroupSize(Integer messageGroupSize) {
		this.messageGroupSize = messageGroupSize;
	}
	public Integer getWaitGroupSizeMillis() {
		return waitGroupSizeMillis;
	}
	public void setWaitGroupSizeMillis(Integer waitGroupSizeMillis) {
		this.waitGroupSizeMillis = waitGroupSizeMillis;
	}
	public Integer getAutoCommitIntervalMs() {
		return autoCommitIntervalMs;
	}
	public void setAutoCommitIntervalMs(Integer autoCommitIntervalMs) {
		this.autoCommitIntervalMs = autoCommitIntervalMs;
	}
	
	public Integer getSessionTimeout() {
		return sessionTimeout;
	}
	public void setSessionTimeout(Integer sessionTimeout) {
		this.sessionTimeout = sessionTimeout;
	}
	public Integer getZookeeperSessionTimout() {
		return zookeeperSessionTimout;
	}
	public void setZookeeperSessionTimout(Integer zookeeperSessionTimout) {
		this.zookeeperSessionTimout = zookeeperSessionTimout;
	}
	public Integer getZookeeperConnectionTimeout() {
		return zookeeperConnectionTimeout;
	}
	public void setZookeeperConnectionTimeout(Integer zookeeperConnectionTimeout) {
		this.zookeeperConnectionTimeout = zookeeperConnectionTimeout;
	}
	public Integer getFetchMessageMaxBytes() {
		return fetchMessageMaxBytes;
	}
	public void setFetchMessageMaxBytes(Integer fetchMessageMaxBytes) {
		this.fetchMessageMaxBytes = fetchMessageMaxBytes;
	}
	public String getAutoOffsetReset() {
		return autoOffsetReset;
	}
	public void setAutoOffsetReset(String autoOffsetReset) {
		this.autoOffsetReset = autoOffsetReset;
	}
	public Integer getAutoOffetResetMs() {
		return autoOffetResetMs;
	}
	public void setAutoOffetResetMs(Integer autoOffetResetMs) {
		this.autoOffetResetMs = autoOffetResetMs;
	}
	public Integer getRebalanceMaxRetries() {
		return rebalanceMaxRetries;
	}
	public void setRebalanceMaxRetries(Integer rebalanceMaxRetries) {
		this.rebalanceMaxRetries = rebalanceMaxRetries;
	}
	public Integer getPackDataQueueSize() {
		return packDataQueueSize;
	}
	public void setPackDataQueueSize(Integer packDataQueueSize) {
		this.packDataQueueSize = packDataQueueSize;
	}
	public Integer getPackNoDataSleepMillis() {
		return packNoDataSleepMillis;
	}
	public void setPackNoDataSleepMillis(Integer packNoDataSleepMillis) {
		this.packNoDataSleepMillis = packNoDataSleepMillis;
	}
	public Integer getConsumerThreadCount() {
		return consumerThreadCount;
	}
	public void setConsumerThreadCount(Integer consumerThreadCount) {
		this.consumerThreadCount = consumerThreadCount;
	}
	public IConsumerExceptionHandler getExceptionHandler() {
		return exceptionHandler;
	}
	public void setExceptionHandler(IConsumerExceptionHandler exceptionHandler) {
		this.exceptionHandler = exceptionHandler;
	}
	public Boolean getTransation() {
		return transation;
	}
	public void setTransation(Boolean transation) {
		this.transation = transation;
	}
	
	
	
}
